package edu.northwestern.cbits.purple_robot_manager.tests; import junit.framework.Assert; import android.content.Context; import android.content.SharedPreferences; import android.content.SharedPreferences.Editor; import android.preference.PreferenceManager; import edu.northwestern.cbits.purple_robot_manager.R; import edu.northwestern.cbits.purple_robot_manager.http.LogServerEmulatorRequestHandler; import edu.northwestern.cbits.purple_robot_manager.logging.LogManager; public class LocalLogServerTestCase extends RobotTestCase { public LocalLogServerTestCase(Context context, int priority) { super(context, priority); } @Override public void test() { if (this.isSelected(this._context) == false) return; try { SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this._context); Editor e = prefs.edit(); e.remove(LogServerEmulatorRequestHandler.LOG_COUNT); e.commit(); String oldEndpoint = LogManager.getInstance(this._context).getEndpoint(); boolean oldEnabled = LogManager.getInstance(this._context).getEnabled(); LogManager.getInstance(this._context).setEndpoint("http://127.0.0.1:12345/log"); Assert.assertEquals("LLST001", "http://127.0.0.1:12345/log", LogManager.getInstance(this._context) .getEndpoint()); LogManager.getInstance(this._context).setEnabled(true); Assert.assertEquals("LLST002", true, LogManager.getInstance(this._context).getEnabled()); LogManager.getInstance(this._context).log("test_event", null); LogManager.getInstance(this._context).upload(); Thread.sleep(3000); prefs = PreferenceManager.getDefaultSharedPreferences(this._context); Assert.assertTrue("LLST003", prefs.getInt(LogServerEmulatorRequestHandler.LOG_COUNT, 0) > 0); LogManager.getInstance(this._context).setEndpoint(oldEndpoint); Assert.assertEquals("LLST004", "" + oldEndpoint, "" + LogManager.getInstance(this._context).getEndpoint()); LogManager.getInstance(this._context).setEnabled(oldEnabled); Assert.assertEquals("LLST005", oldEnabled, LogManager.getInstance(this._context).getEnabled()); } catch (InterruptedException e) { LogManager.getInstance(this._context).logException(e); } } @Override public int estimatedMinutes() { return 1; } @Override public String name(Context context) { return context.getString(R.string.name_local_log_server_test); } }